<template>
  <cfg-form :ref="ref" v-bind="attrs" :data="data.values"></cfg-form>
</template>

<script>
import { typeClassName } from "@/pages/config/classNameMap";
export default {
  name: "pg-form",
  components: {},
  inject: ["anc"],
  data() {
    return {
      ref: "editView",
      onlyRead: false,
      loading: false,
      
    };
  },
  props: {
    data: {
      default: () => {
        return {};
      },
    },
  },
  watch: {},
  computed: {
   attrs() {
      return {
        labelWidth: 100,
        labelPosition: "right",
        cols: 2,
        columns: [
          {
            key: "sf_code",
            title:  "仪表编码",
            minWidth: 100,
            align: "center",
            config: { type: "text" },
          },
          {
            key: "sf_name",
            title:  "仪表名称",
            minWidth: 100,
            align: "center",
            config: { type: "text" },
          },
          {
            key: "sf_equipmentType",
            title:  "类别名称",
            minWidth: 100,
            align: "center",
            config: {
              type: "select",
              options: this.anc.filterEquipTypeOptions,
            },
          },
          {
            key: "initValue",
            title:  "初始数值",
            minWidth: 100,
            align: "center",
            config: { type: "number" },
          },
          {
            key: "installTime",
            title:  "安装时间",
            minWidth: 100,
            align: "center",
            config: { type: "date" },
          },
          {
            key: "remark",
            title:  "备注",
            minWidth: 100,
            align: "center",
            config: { type: "textarea" },
          },
          {
            key: "upperLimitValue",
            title:  "仪表上限值",
            minWidth: 100,
            align: "center",
            config: { type: "number" },
          },
          {
            key: "workshop",
            title:  "责任车间名称",
            minWidth: 100,
            align: "center",
            config: { type: "text" },
          },
          {
            key: "procedure",
            title:  "默认工序",
            minWidth: 100,
            align: "center",
            config: { type: "text" },
          },
          {
            key: "purchaseDate",
            title:  "采购日期",
            minWidth: 100,
            align: "center",
            config: { type: "date" },
          },
          {
            key: "arrivalDate",
            title:  "到厂日期",
            minWidth: 100,
            align: "center",
            config: { type: "date" },
          },
          // {
          //   key: "responsible",
          //   title:  "负责人",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "text" },
          // },
          // {
          //   key: "workHours",
          //   title:  "标准工时",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "number" },
          // },
          // {
          //   key: "originalStandard",
          //   title:  "原标准工时",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "number" },
          // },
          // {
          //   key: "specifyDate",
          //   title:  "指定日期",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "date" },
          // },
          // {
          //   key: "endDate",
          //   title:  "结束日期",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "date" },
          // },
          // {
          //   key: "maintenancePeriod",
          //   title:  "保养周期",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "number" },
          // },
          // {
          //   key: "lastMaintainDate",
          //   title:  "最近保养周期",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "date" },
          // },
          // {
          //   key: "nextMaintainDate",
          //   title:  "下次保养周期",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "date" },
          // },
          // {
          //   key: "pointCheckPeriod",
          //   title:  "点检周期",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "text" },
          // },
          // {
          //   key: "equipmentPower",
          //   title:  "设备功率",
          //   minWidth: 100,
          //   align: "center",
          //   config: { type: "text" },
          // },
        ],
        rules: {
          sf_code: [
            { required: true, message: "不能为空", trigger: "blur" },
          ],
          sf_name: [
            { required: true, message: "不能为空", trigger: "blur" },
          ],
        },
        // onlyRead: this.onlyRead,
      };
    },
  },
  created() {},
  mounted() {
    this.$nextTick(() => {
      this.$set(this.anc.vms, this.ref, this);
      this.jobClassObject = this.$modelObject.create(
        `${typeClassName["job"].modelType}`
      );
      this.positionClassObject = this.$modelObject.create(
        `${typeClassName["position"].modelType}`
      );
      this.anc.setOptionsByHier(
        "job",
        this.jobClassObject,
        "jobOptions",
        {
          label: "sf_name",
          value: "sf_code",
        },
        "editView"
      );
      this.anc.setOptionsByHier(
        "position",
        this.positionClassObject,
        "positionOptions",
        {
          label: "sf_name",
          value: "sf_code",
        },
        "editView"
      );
    });
  },
  methods: {
    validate(fn) {
      return this.$refs[this.ref].$refs["form"].validate((valid) => {
        if (fn) {
          return fn(valid);
        } else {
          return valid;
        }
      });
    },
    resetFields() {
      this.$refs[this.ref].$refs["form"].resetFields();
    },
  },
};
</script>
<style scoped></style>
